home *** CD-ROM | disk | FTP | other *** search
- ;----------------------------------------------------------------------------
- ; ASM Function calls for bsdsocket.library functions v1.0 by Roger Light 1999.
- ;
- ; Allows non-restrictive use of bsdsocket.library - ie bsdsocket.library
- ; doesn't have to be open on your program startup.
- ;
- ; See MiamiSDK from Nordic Global for function descriptions.
- ;
- ; Functions are named as follows:
- ;
- ; socket_() changes to socket{}
- ;
- ; NOTE: This is a cut down version of SocketIncs.bb2 intended for use with
- ; TCPFuncs.bb A complete set of replacement bsdsocket.library function calls
- ; is available from me.
- ;
- ; Contact me at rogerlight@mindless.com
-
-
- ;----------------------------------------------------------------------------
-
- Function.l socket{domain.l, type_.l, protocol.l}
- ; d0 d1 d2
- SHARED SocketBase.l
- MOVE.l a6,-(a7)
- GetReg d6,SocketBase
- MOVE.l d6,a6
- JSR -30(a6)
-
- MOVE.l (a7)+,a6
- AsmExit
- End Function
-
- ;----
-
- Function.l connect{s.l, *name.l, namelen.l}
- ; d0 a0 d1
- SHARED SocketBase.l
- MOVE.l a6,-(a7)
- GetReg d6,SocketBase
- MOVE.l d6,a6
-
- MOVE.l d1,a0
- MOVE.l d2,d1
-
- JSR -54(a6)
-
- MOVE.l (a7)+,a6
- AsmExit
- End Function
-
- ;----
-
- Function.l send{s.l, *buf.l, len_.l, flags.l}
- ; d0 a0 d1 d2
- SHARED SocketBase.l
- MOVE.l a6,-(a7)
- GetReg d6,SocketBase
- MOVE.l d6,a6
-
- MOVE.l d1,a0
- MOVE.l d2,d1
- MOVE.l d3,d2
-
- JSR -66(a6)
-
- MOVE.l (a7)+,a6
- AsmExit
-
- End Function
-
- ;----
-
- Function.l recv{s.l, *buf.l, len_.l, flags.l}
- ; d0 a0 d1 d2
- SHARED SocketBase.l
- MOVE.l a6,-(a7)
- GetReg d6,SocketBase
- MOVE.l d6,a6
-
- MOVE.l d1,a0
- MOVE.l d2,d1
- MOVE.l d3,d2
-
- JSR -78(a6)
-
- MOVE.l (a7)+,a6
- AsmExit
-
- End Function
-
- ;----
-
- Function.l IoctlSocket{s.l, req.l, *argp.l}
- ; d0 d1 a0
- SHARED SocketBase.l
- MOVE.l a6,-(a7)
- GetReg d6,SocketBase
- MOVE.l d6,a6
-
- MOVE.l d2,a0
-
- JSR -114(a6)
-
- MOVE.l (a7)+,a6
- AsmExit
-
- End Function
-
- ;----
-
- Statement CloseSocket{s.l}
- ; d0
- SHARED SocketBase.l
- MOVE.l a6,-(a7)
- GetReg d6,SocketBase
- MOVE.l d6,a6
- ; s.l in d0
- JSR -120(a6)
-
- MOVE.l (a7)+,a6
- AsmExit
-
- End Statement
-
- ;----
-
- Function.l WaitSelect{nfds.l, *readfds.l, *writefds.l, *exceptfds.l, *timeout.l, *signal.l}
- ; d0 a0 a1 a2 a3 d1
- SHARED SocketBase.l
- MOVE.l a6,-(a7)
- GetReg d6,SocketBase
- MOVE.l d6,a6
-
- MOVE.l d1,a0
- MOVE.l d2,a1
- MOVE.l d3,a2
- MOVE.l d4,a3
- MOVE.l d5,d1
-
- JSR -126(a6)
-
- MOVE.l (a7)+,a6
- AsmExit
- End Function
-
- ;----
-
- Function.l gethostbyname{*name.l}
- ; a0
- SHARED SocketBase.l
- MOVE.l a6,-(a7)
- GetReg d6,SocketBase
- MOVE.l d6,a6
-
- MOVE.l d0,a0
-
- JSR -210(a6)
-
- MOVE.l (a7)+,a6
- AsmExit
-
- End Function
-